home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 2: CDPD 1 / Almathera Ten on Ten - Disc 2: CDPD 1.iso / pd / 176-200 / 179 / excption / eiunmont.c < prev    next >
C/C++ Source or Header  |  1995-03-13  |  3KB  |  64 lines

  1. /**************************************************************************/
  2. /*                                                                        */
  3. /*                                                                        */
  4. /*                                                                        */
  5. /*                EXCEPTION HANDLER / CHIP STACK                          */
  6. /*               ==========================================               */
  7. /*                                                                        */
  8. /*                                                                        */
  9. /*  MODULE      : Exception                                               */
  10. /*  NOM         : EIUmont.c                                               */
  11. /*  FONCTION    :                                                         */
  12. /*                                                                        */
  13. /*  RESPONSABLE : HEWES Gerald                                            */
  14. /*  TEL         : 33 (1) 46 24 20 27                                      */
  15. /*                                                                        */
  16. /**************************************************************************/
  17.  
  18. /**************************************************************************/
  19. /*                                                                        */
  20. /* HEW 880310 Ver 0.1 : First Soft Version                                */
  21. /* HEW 880324 Ver 0.2 : Handle 68000 exceptions                           */
  22. /* HEW 880413 Ver 0.3 : Handle 680X0 Formats                              */
  23. /* HEW 880508 Ver 0.4 : First Released version : routines split           */
  24. /*                      Major name changes for better homogeneity         */
  25. /* HEW 880517 Ver 0.5 : include change. No more puts in library           */
  26. /* HEW 880605 Ver 0.6 : Disable/Enable Function + Prototypes              */
  27. /*                                                                        */
  28. /**************************************************************************/
  29.  
  30. #include <stdio.h>
  31. #include "local:excption.h"
  32. #include <exec/execbase.h>
  33. #include <exec/tasks.h>
  34. #include <proto/exec.h>
  35.  
  36. extern E_ErrorStatus  E_global;  /* Declaration of Necessary Data */
  37.  
  38.  
  39. /***************************** CODE ***************************************/
  40.  
  41.  
  42.  
  43. extern void EIUnmount(dike)
  44. E_ErrorStatus *dike;  /* Needed for the library version */
  45.  
  46.                 /************************************************/
  47.                 /* Terminates Exception Handling for program    */
  48.                 /* Restitutes old exception handler             */
  49.                 /************************************************/
  50.  
  51.  
  52. {
  53.  struct Task *taskloc;
  54.  
  55.    taskloc = (struct Task *)FindTask(0);        /* Get Task Info      */
  56.    taskloc->tc_TrapCode = (APTR)dike->E_OldTrapCode;
  57.    taskloc->tc_TrapData = (APTR)dike->E_OldTrapData;
  58.    dike->E_up = 0;           /* No Local State          */
  59.    dike->E_top.E_magic  = 0; /* Disable handler         */
  60. }
  61.  
  62. /*************************  CIVILISATION ENDS HERE  ***********************/
  63.  
  64.